home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c-part1 / 5755 < prev    next >
Encoding:
Text File  |  1996-08-05  |  1.6 KB  |  57 lines

  1. Path: news.nevada.edu!not-for-mail
  2. From: chancl@nevada.edu (Clapton Chan)
  3. Newsgroups: comp.lang.c
  4. Subject: Re: How to get a random string each time??
  5. Date: 17 Feb 1996 10:54:46 GMT
  6. Organization: University of Nevada System Computing Services
  7. Message-ID: <4g4c5m$tlb@news.nevada.edu>
  8. References: <4fh5od$qq0@news.nevada.edu>
  9. NNTP-Posting-Host: unauthenticated_user@pioneer.nevada.edu
  10. X-Newsreader: TIN [UNIX 1.3 950520BETA PL0]
  11.  
  12. Thanks for all of you kind C gurus.  My problem is solved.
  13. I did make some stupid code earlier, but hey, everyone gives
  14. the new guy a break, right?
  15.  
  16. I now post my solution for your comments.
  17.  
  18. **************Here*is*the*question*********************
  19.  
  20. Write a program that reads the list of strings and then selects
  21. and prints a random string from the list.  
  22.  
  23. *************Here*is*my*solution***********************
  24.  
  25. #include <stdio.h>
  26. #include <string.h>
  27. #include <stdlib.h>  /* This is where srand and rand is located.*/
  28.  
  29.  int main ()
  30.  {
  31.      char *p, str[10][80];
  32.      int i, j;
  33.  
  34.      srand(time(NULL));  /* pseudocode */
  35.      printf("Enter 10 strings (or '999' to quit):\n");
  36.      for(i=0; i<10; i++) {
  37.         fgets(str[i], sizeof(str[i]), stdin);
  38.         if((p=strchr(str[i], '\n')) != NULL) *p='\0';
  39.         if(!(strcmp(str[i], "999")))
  40.            break;
  41.     }
  42.  
  43.     j = rand();
  44.     j = j%i;  /* this handles early program exit */
  45.     printf("\nAnswer: %s\n", str[j]);
  46.  
  47.     return 1;
  48.  }
  49.  
  50. *************************End******************************
  51.  
  52. I hope this program is bug-less.  ;)
  53.  
  54. Cheers,
  55. Clapton
  56. http://www.nevada.edu/home/15/chancl/html/homepage.html
  57.